﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ActivitiesControl.Domain.Model;
using ActivitiesControl.Domain.Utils;

namespace ActivitiesControl.Domain.Services
{
	public interface IActivityServices
		: IBaseServices
	{
		IEnumerable<Activity> GetActivitiesByMonth(int month);

        IEnumerable<Activity> GetActivities(int resourceId,  Date begin, Date end, int customerId, int projectId);

		IEnumerable<string> GetActivityTypes(int customerId);

		Activity GetActivityById(int id);

		void RegisterActivity(
			string description, 
			string activityType, 
			int effortHours, 
			Date date, 
			int projectId, 
			int resourceId);

		void UpdateActivity(
			int activityId,
			string description,
            string activityType,
			int effortHours,
			Date date,
			int projectId,
			int resourceId);

		void ExcludeActivity(
			int activityId);

	}
}
